A serial bus interface such as IEEE1394 allows simultaneous connection of a plurality of devices, e.g., a digital video device (DV), digital camera device (DC), host computer, scanner, VTR, and the like unlike a Centronics parallel interface that connects one host computer and one terminal (device), and a data communication network system and home network by connecting these devices have been proposed by, e.g., the IEEE1394 standard as one of serial bus standards.
Various devices can be connected to these networks, and unspecified many devices of different manufacturers may be connected.
According to IEEE1394-1995, a maximum of 63 nodes can be connected to a single 1394 compatible bus (to be referred to as a “local bus” hereinafter) by a serial address designation method complying with IEEE1394. When a 10-bit address space is defined to designate a bus ID that specifies a bus, 1,023 buses can be interconnected. In a cable environment, the maximum length of a cable between neighboring information signal processing devices (to be referred to as “nodes” hereinafter) that form respective devices is 4.5 m.
In order to eliminate technical limitations encountered upon connecting more than 63 devices that can be connected in maximum by IEEE1394, or upon interconnecting a plurality of IEEE1394 buses at remote places, a device called “1394 bridge” is normally used. When a plurality of IEEE1394 local buses are connected to each other via the 1394 bridge, devices connected to different local buses can make data communications.
In case of IEEE1394, when the bus configuration has changed by, e.g., an increase/decrease in the number of nodes upon insertion/removal of a device node, upon ON/OFF of a power supply, or the like, launch by hardware detection resulting from network abnormality, a direct command from a protocol under the host control, or the like, and a new network configuration need be recognized, each node that has detected such change sends a bus reset signal onto the bus, thus executing a mode for recognizing a new network configuration.
The bus reset signal is transferred to another node on the local bus, and after all the nodes finally detect the bus reset signal, a bus reset is launched. When a bus reset is launched, data transfer is temporarily suspended, and is restarted under a new network configuration after the completion of the bus reset.
On the other hand, in case of a device connected to the IEEE1394 bus, the physical layer and data link layer in a transfer protocol are specified by IEEE1394, but as for higher level layers, various higher level protocols are defined and implemented in correspondence with specific purposes of devices and applications involved.
These higher level protocols of IEEE1394 specify a connection establishment method upon making a data communication with a specific device using the IEEE1394 bus, a resource management method, an application data exchange method, a connection abortion method upon completion of data transfer, a recovery method from an error state and a recovery method upon bus reset as a feature of IEEE1394, and understandings of protocols before and after the bus reset.
In case of DPP (Direct Print Protocol) as an example of higher level protocols, the following mechanism is specified. That is, when a bus reset has occurred, a device that has established a connection issues a reset command at the beginning of data transfer, and the other device sends a confirmation response after reception of that command, thus restarting data transfer.
The AV/C protocol has an understanding that when a bus reset has occurred before a node, which received an AV/C command issued by another node, outputs a response, the command itself is aborted, and a node that issued the command must not expect to receive any response.
In this manner, upon IEEE1394 bus reset, since data transfer is temporarily interrupted, and the topology before and after a bus reset changes, higher level protocol layers must cope with such change in situation, and measures for both the data sending and receiving sides upon bus reset have been specified in the protocol standard. In this way, when a bus reset has occurred, since the data sending and receiving sides execute specified appropriate processes in data transfer between devices having identical higher level protocols before and after a bus reset, data transfer can be continued without being influenced by a bus reset.
However, a plurality of different or identical types of devices may be connected to a single bus using IEEE1394. It is difficult for the user to specify a device he or she wants to use in an environment in which a plurality of such devices are connected. Even when such devices are displayed on the screen, since there are a plurality of identical devices and the user cannot easily recognize a line connection state, it is often difficult to intuitively detect a device the user wants to use.
Such problem can be solved using a high level protocol. However, a high level protocol can issue a specific event to a specific device by specifying such operation, but another protocol has no such specification, no event can be added in the already settled protocol, or such operation itself is not available. As a result, some operation can be made by a given protocol but cannot be made by another protocol.
Such problems similarly occur in networks other than those complying with IEEE1394.